
/**
*这个作为smartList里的一个条,竖的条条
 * 能被拖动，能被点击，能设置自己的目标位置
 * 
 * 事件类型为OnSliderBarMove
 * 
 * 这个就是一个接口,不包含实现
*/
package kgame5.kgui.kcomp {
import flash.display.*;
import flash.events.*;

public class SmartSliderBar extends EventDispatcher{
	public static const 
		EVENTTYPE_SLIDERMOVE:String="EVENTTYPE_SLIDERMOVE";
	//___________________PROPERTY___________________
	protected var
		mc_sb:MovieClip=null,
			mc_slider:MovieClip=null,
			mc_bar:MovieClip=null;
	//--
	protected var isActive2:Boolean=false;
	//___________________METHOD______________________
	public function SmartSliderBar(p_mc:MovieClip){
		//T.p("SmartSliderBar");
		//--输入
		mc_sb=p_mc;
			mc_slider=mc_sb.mc_slider;
			mc_bar=mc_sb.mc_bar;
		//T.p(mc_sb,mc_slider,mc_bar);
	}
	public function getDO():DisplayObject{
		return mc_sb;
	}
	//========
	
	public function clear(){};//这个是设置到0的位置，因为smartList有clear,否则上一次的位置还在呢就
	//============
	//直接设置目标,!!注意这个的原则是杂拖拽过程中，其实是要以拖拽为主的，用户输入优先
	//!!注意设置的是0~1
	public function setPercent(p:Number){}
	//就是那个条直接到目标位置，为了是在滚动的时候控制
	public function setPercentImmediately(p:Number){}
	//返回百分比,0~1
	public function getPercent():Number{return -1;}
	//有添加删除元素的时候要更改高度
	public function changeSliderHeight (eH : Number, mapH : Number,aListItem:Array){}
	
	//==========
	public function active(){
		isActive2=true;
		mc_slider.gotoAndStop(1);
		mc_bar.gotoAndStop(1);
	}
	public function deActive(){
		isActive2=false;
		mc_slider.gotoAndStop(2);
		mc_bar.gotoAndStop(2);
	}
	public function isActive():Boolean{
		return isActive2;
	}
	
	//===========
	//--移动到最大
	public function moveMax(){}
	//--移动到最小
	public function moveMin(){}
}//end of class
}